package com.liu.lambda;

/**
 * 为什么使用 Lamdba
 */
public class Lamdba1 {

    /**
     * 定义接口然后进行实现
     */
    interface Add {
        int operation(int a, int b);
    }

    static class MyAdd implements Add {
        @Override
        public int operation(int a, int b) {
            return a + b;
        }
    }

    public static void main(String[] args) {

        //第一种实现接口的方法
        Add add1 = new MyAdd();
        System.out.println(add1.operation(1, 1));

        //  第二种实现接口的方法
        Add add2 = new Add() {
            @Override
            public int operation(int a, int b) {
                return a + b;
            }
        };
        System.out.println(add2.operation(1, 2));

        // 第三种lamdba表达式
        Add add3 = (a, b) -> a - b;

        System.out.println(add3.operation(1, 2));

    }

}
